package com.acme.faturamento.model;

import java.util.Properties;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;

import com.acme.faturamento.model.businessdelegate.PersistenceManager;
import com.acme.faturamento.model.businessdelegate.PersistenceManagerRemote;
import com.acme.faturamento.model.entity.Cidade;
import com.acme.faturamento.model.entity.Uf;

public class TestPersistenceManager {
    public static void main(String[] args) {
        Properties properties = new Properties();
        properties.put("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
        properties.put("java.naming.factory.url.pkgs", "=org.jboss.naming:org.jnp.interfaces");
        properties.put("java.naming.provider.url", "localhost:1099");

        Context context;
        try {
            context = new InitialContext();
            PersistenceManagerRemote beanRemote = (PersistenceManagerRemote) context
                    .lookup(PersistenceManager.RemoteJNDIName);

            Uf uf = beanRemote.get(Uf.class,Long.valueOf(50l));
            System.out.println("UF :"+uf.getId());

            Cidade cidade = new Cidade();
            cidade.setNome("SAO PAULO");
            cidade.setUf(uf);


            beanRemote.salvar(cidade);

            /*Cidade cidade2 = beanRemote.get(Cidade.class,cidade.getId());

            cidade.setNome("STA CATARINA");
            cidade2.setNome("SAO PAULO 2");
            beanRemote.salvar(cidade2);
            beanRemote.salvar(cidade);

            cidade2 = beanRemote.get(Cidade.class,cidade.getId());
            System.out.println("Cidade 2 : "+cidade2.getNome());
            System.out.println("Cidade : "+cidade.getNome());*/

        } catch (NamingException e) {
            e.printStackTrace();
        }
    }
}
